前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航
  • React专栏

    • React组合式开发实战

      • 前端开发的四个时代
      • 企业管理系统的前世今生
      • 可视化页面搭建工具
      • 实战篇 01:开发前准备
      • 实战篇 02:项目脚手架
      • 实战篇 03:页面布局方案
      • 实战篇 04:权限管理机制
      • 实战篇 05:菜单匹配逻辑
      • 实战篇 06:消息通知设计
      • 实战篇 07:多语言支持
      • 继往开来:可视化页面搭建工具
    • React Hooks与Immutable实战

    • React SSR服务端渲染与同构实践

    • IM聊天系统前端开发实践

    • 微前端开发实战

    • React进阶实践

  • Vue专栏

  • 移动端专栏

  • Node专栏

  • 前端工程化专栏

  • 算法专栏

  • Typescript专栏

  • 其他专栏

完整面试题地址:
作者:程序员poetry
扫码关注作者公众号:「前端进阶之旅」 每天分享技术干货
前端进阶之旅公众号二维码

前面我们准备好了数据库开发环境,本讲我们给大家普及一下数据库设计和开发基础知识。

本节内容如下:

  • 用户管理;
  • 数据库增删;
  • 数据表设计;
  • 数据 CRUD。

# 用户管理

从安全角度讲,我们将来需要在应用中使用非 root 用户,则需要添加新的 MySQL 用户,并且不同用户可以赋予不同的用户权限。这个操作实际上是往 mysql 数据库中的 user 表添加新数据:

mysql数据库:

img

user表:

img

# 增加新用户

以下为添加用户的实例,新增一个普通用户,只能查看、新增和更新数据:

  • 用户名:57code;
  • 密码为:666666;
  • 操作权限:SELECT、INSERT、UPDATE。

首先选择:mysql_db_container -> 权限

img

选择数据库:例如 mysql

img

创建用户:

img

填入用户名和密码:

img

勾选权限:

img

点击“保存”,效果如下:

img

# 数据库增删改

前面我们操作的是 mysql 数据库,开发中每个应用基本都有对应的数据库。

# 创建数据库

下面我们创建一个羊村学堂数据库ycxt

点击“创建数据库”:

img

填入数据库名称:编码可以默认。

img

创建成功,效果如下:

img

# 修改数据库

点击“修改数据库”:

img

可以修改名称和编码,也可以删库(就是删库跑路的那个删库^_^):

img

# 数据表设计

有了数据库,就可以创建具体的数据表。数据表由若干字段组成,首先我们要了解字段都有哪些数据类型。

# 数据类型

数据类型分几个大类:

  • 字符串:指 CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET,具体范围如下:

    类型 大小 用途
    CHAR 0-255 bytes 定长字符串
    VARCHAR 0-65535 bytes 变长字符串
    TINYBLOB 0-255 bytes 不超过 255 个字符的二进制字符串
    TINYTEXT 0-255 bytes 短文本字符串
    BLOB 0-65 535 bytes 二进制形式的长文本数据
    TEXT 0-65 535 bytes 长文本数据
    MEDIUMBLOB 0-16 777 215 bytes 二进制形式的中等长度文本数据
    MEDIUMTEXT 0-16 777 215 bytes 中等长度文本数据
    LONGBLOB 0-4 294 967 295 bytes 二进制形式的极大文本数据
    LONGTEXT 0-4 294 967 295 bytes 极大文本数据
  • 数值:包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL 和 NUMERIC),以及近似数值数据类型(FLOAT、REAL 和 DOUBLE PRECISION)。具体范围如下:

    类型 大小 范围(有符号) 范围(无符号) 用途
    TINYINT 1 Bytes (-128,127) (0,255) 小整数值
    SMALLINT 2 Bytes (-32 768,32 767) (0,65 535) 大整数值
    MEDIUMINT 3 Bytes (-8 388 608,8 388 607) (0,16 777 215) 大整数值
    INT或INTEGER 4 Bytes (-2 147 483 648,2 147 483 647) (0,4 294 967 295) 大整数值
    BIGINT 8 Bytes (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值
    FLOAT 4 Bytes (-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38) 0,(1.175 494 351 E-38,3.402 823 466 E+38)<
    fe
    基础篇
    进阶篇
    高频篇
    精选篇
    手写篇
    原理篇
    面经篇
    自检篇
    每日一题
    • 综合
      • 综合题型
      • 其他问题
      • 设计模式
      • 思维导图
      • 学习路线
    • 前端基础
      • HTTP
      • 浏览器
      • 计算机基础
    • 进阶学习
      • NPM工作流
      • Docker
      • Canvas
      • Node学习指南
      • 前端综合文章
    • 其他
      • Handbook
      • 职场话题
      • CSS可视化
    小程序题库
    公众号动态
    博客动态
    开发者导航
    • React专栏

      • React组合式开发实战

        • 前端开发的四个时代
        • 企业管理系统的前世今生
        • 可视化页面搭建工具
        • 实战篇 01:开发前准备
        • 实战篇 02:项目脚手架
        • 实战篇 03:页面布局方案
        • 实战篇 04:权限管理机制
        • 实战篇 05:菜单匹配逻辑
        • 实战篇 06:消息通知设计
        • 实战篇 07:多语言支持
        • 继往开来:可视化页面搭建工具
      • React Hooks与Immutable实战

      • React SSR服务端渲染与同构实践

      • IM聊天系统前端开发实践

      • 微前端开发实战

      • React进阶实践

    • Vue专栏

    • 移动端专栏

    • Node专栏

    • 前端工程化专栏

    • 算法专栏

    • Typescript专栏

    • 其他专栏

    MySQL 数据库设计和开发基础|Nuxt3专题 | 前端进阶之旅 - 前端求职面试刷题宝典